As saídas digitais do arduino tem como nível baixo 0V ou terra e nível alto com 5V.
Contudo muitos dos shields do arduino vem de celulares e dispostivos de baixo consumo que são alimentados com 3,3V. Se você ligar diretamente uma saída do Arduino a uma entrada de um dispositivo desses simplesmente irá danificar o circuito. O arduino sobrevive mas seu dispositivo 3V3 vai embora.
Cuidado: Existe shield muito parecidos e uns suportam 5V, outros só suportam ser alimentados com 5V e
outros são totalmente 3,3V. Portanto muito cuidado, eu mesmo pifei cartões SDs com um erro destes e
as fotos de Internet são praticamente iguais, varia de fabricante para fabricante.
Importante : O Arduino tem em seu circuito um chip regulador de 3,3V e através do conector podemos utilizar esta energia para alimentar o nosso dispositivo mas desde que este consuma até 100 mA. Contudo, a saída do arduino é sempre com 5V e você precisará fazer um divisor resistivo para cada saída do arduino que você for conectar no seu dispositivo.
A solução é fazer um adaptador para as saídas do arduino de maneira que converta os 5V do arduino em 3,3V
Basicamente são 2 resistores : um de 680 ohms ligado a terra e a entrada do dispositivo low-power(3,3) e um resistor de 480 ohms ligado da porta do dispositivo low-power a porta de saída do arduino.
Não há. Este projeto é puro hardware.
Se a saída do arduino emitir 5V teremos na entrada do dispositivo low-power 2,93V. Ele irá entender como nível lógico alto com certeza.
Por outro lado, se uma saida do dispositivo low-power emitisse 3V3 teríamos 3,3V na entrada do Arduino, o que ele entenderia como nível lógico um também. Mas não é necessário colocar o divisor resistivo neste caso, a entrada do arduino suportaria 3,3V facilmente e endenria como Nível Lógico alto.